package edu.ssdut.revise.core.matchRule;

import com.github.javaparser.ast.body.ConstructorDeclaration;
import com.github.javaparser.ast.body.MethodDeclaration;
import com.github.javaparser.ast.body.TypeDeclaration;
import com.github.javaparser.ast.body.VariableDeclarator;
import edu.ssdut.revise.core.match.MatchStore;

public interface MatchRule {
    void typeDeclarationMatch(MatchStore<TypeDeclaration<?>> matchStore);

    void variableDeclaratorMatch(MatchStore<VariableDeclarator> matchStore);

    void methodDeclarationMatch(MatchStore<MethodDeclaration> matchStore);

    void constructorDeclarationMatch(MatchStore<ConstructorDeclaration> matchStore);
}
